const express = require('express');
const cors = require('cors');
const dotenv = require('dotenv');

// 加载环境变量
dotenv.config();

// 创建Express应用
const app = express();
const PORT = process.env.PORT || 3000;

// 中间件
app.use(cors());
app.use(express.json());

// 基础路由
app.get('/', (req, res) => {
  res.json({
    message: '欢迎使用碳中和主题绿色出行积分系统API',
    version: '1.0.0',
    description: '这是一个基于Express.js构建的后端服务'
  });
});

// 用户相关路由
app.use('/api/users', require('./routes/users'));

// 出行记录相关路由
app.use('/api/trips', require('./routes/trips'));

// 积分相关路由
app.use('/api/points', require('./routes/points'));

// 404处理
app.use((req, res) => {
  res.status(404).json({
    message: '接口不存在',
    code: 404
  });
});

// 错误处理中间件
app.use((err, req, res, next) => {
  console.error(err.stack);
  res.status(500).json({
    message: '服务器内部错误',
    code: 500
  });
});

// 启动服务器
app.listen(PORT, () => {
  console.log(`服务器正在运行，端口：${PORT}`);
  console.log(`访问 http://localhost:${PORT} 查看API信息`);
});